function climbStairs(n) {
    // 如果楼梯阶数为 0 或 1，直接返回 n
    if (n <= 1) return n

    // 创建一个 dp 数组来存储每个台阶的方法数
    const dp = new Array(n + 1).fill(0)

    // 初始条件
    dp[0] = 1
    dp[1] = 1

    // 计算每个台阶的方法数
    for (let i = 2; i <= n; i++) {
       dp[i] = dp[i - 1] + dp[i - 2]
    }

    // 返回到达第 n 阶的方法总数
    return dp[n]
 }

 // 示例测试
 console.log(climbStairs(2)) // 输出：2
 console.log(climbStairs(3)) // 输出：3
 console.log(climbStairs(4)) // 输出：5
 console.log(climbStairs(5)) // 输出：8